package com.shifan.phone.dao;

import java.util.List;

import com.shifan.phone.model.ProductTypeModel;
/**
 * 产品类型Dao
 * 
 * @author TangLei
 * @date 2018年12月5日 下午2:03:01
 * @version 1.0
 */
public interface ProductTypeModelMapper {
	/**
	 * 删除产品类型信息
	 * @param proTypeId 产品类型ID
	 * @return 影响的行数
	 */
    int deleteByPrimaryKey(String proTypeId);

    /**
     * 增加产品类型（一次性增加所有字段）
     * @param record 产品类型对象
     * @return 影响的行数
     */
    int insert(ProductTypeModel record);

    /**
     * 增加（增加一个或多个字段）
     * @param record 产品类型对象
     * @return 影响的行数
     */
    int insertSelective(ProductTypeModel record);

    /**
     * 根据ID查询
     * @param proTypeId 产品类型ID
     * @return 产品对象
     */
    ProductTypeModel selectByPrimaryKey(String proTypeId);

    /**
     * 修改（修改一个或多个字段）
     * @param record 产品类型对象
     * @return 影响的行数
     */
    int updateByPrimaryKeySelective(ProductTypeModel record);

    /**
     * 修改（修改一个或多个字段）
     * @param record 产品类型对象
     * @return 影响的行数
     */
    int updateByPrimaryKey(ProductTypeModel record);
    
    /**
     * 查询所有产品类型信息（包括根据条件查询）
     * @param record 产品类型对象
     * @return 产品类型对象集合
     */
    List<ProductTypeModel> findAll(ProductTypeModel record);
    
    /**
     * 查询总行数（包括根据条件查询）
     * @param record 产品类型对象
     * @return 总行数
     */
    int findCount(ProductTypeModel record);
    
    /**
     * 根据pid查询类型名称
     * @param proTypePid 自关联ID
     * @return 类型名称
     */
    String findByPid(String proTypePid);
    
    /**
     * 查询所有的类型名称和ID
     * @return 类型对象集合
     */
    List<ProductTypeModel> findAllNameOrId();
}